//
//  main.c
//  C_Study
//
//  Created by rui on 12-6-30.
//  Copyright (c) 2012年 Wang Rui. All rights reserved.
//

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define Min(a,b) ((a<b)?a:b)
#define MaX(a,b) ((a>b)?a:b)

int main(int argc, const char * argv[])
{	
	int m,n,max=1,min=1;
	
	printf("please input two number:\n");
	scanf("%d",&m);
	scanf("%d",&n);
	
	//利用小学方法
	for (int i=2; i<=MaX(m, n); i++) {
		while(m%i==0 && n%i==0) {
			m = m/i;
			n = n/i;			
			max *= i;//最大公约数
		}
	}
	min = max*m*n;
	printf("%d %d\n",max,min);
	
	return 0;
}

